package com.dmx.cep.service.impl;




import com.dmx.cep.dao.ServiceMonitorDao;
import com.dmx.cep.entity.TvContentStatus;
import com.dmx.cep.entity.VodContentStatus;
import com.dmx.cep.service.ServiceMonitorService;
import com.dmx.fw.service.impl.BaseServiceImpl;
/**
 *
 * @author Alex.lu
 *
 */

public class ServiceMonitorServiceImpl extends BaseServiceImpl implements ServiceMonitorService{
    private ServiceMonitorDao serviceMonitorDao;

	public void setServiceMonitorDao(ServiceMonitorDao serviceMonitorDao) {
		this.serviceMonitorDao = serviceMonitorDao;
	}

	@Override
	public void recoverContentInfosStatus(String[] ids) throws Exception{
		// TODO Auto-generated method stub
		VodContentStatus vodContentStatus;
		if(ids!=null){
			for(String contentId:ids){
				vodContentStatus=serviceMonitorDao.findVodContentStatusByContentId(contentId);
				if(vodContentStatus!=null){
					if(vodContentStatus.getAssetStatus()==-1)
						vodContentStatus.setAssetStatus(-3);
					if(vodContentStatus.getCaptionStatus()==-1)
						vodContentStatus.setCaptionStatus(-3);
					if(vodContentStatus.getDigestStatus()==-1)
						vodContentStatus.setDigestStatus(-3);
					if(vodContentStatus.getImageStatus()==-1)
						vodContentStatus.setImageStatus(-3);
					if(vodContentStatus.getPublishStatus()==-1)
						vodContentStatus.setPublishStatus(-3);
					if(vodContentStatus.getTranscodeStatus()==-1)
						vodContentStatus.setTranscodeStatus(-3);
					if(vodContentStatus.getAnalysisStatus()==-1)
						vodContentStatus.setAnalysisStatus(-3);
					serviceMonitorDao.saveObject(vodContentStatus);
				}
			}
		}
	}
	
	@Override
	public void recoverTVContentInfosStatus(String[] ids) throws Exception{
		// TODO Auto-generated method stub
		TvContentStatus tvContentStatus;
		if(ids!=null){
			for(String contentId:ids){
				tvContentStatus=serviceMonitorDao.findTvContentStatusByContentId(contentId);
				if(tvContentStatus!=null){
					if(tvContentStatus.getAssetStatus()==-1)
						tvContentStatus.setAssetStatus(-3);
					if(tvContentStatus.getCaptionStatus()==-1)
						tvContentStatus.setCaptionStatus(-3);
					if(tvContentStatus.getDigestStatus()==-1)
						tvContentStatus.setDigestStatus(-3);
					if(tvContentStatus.getImageStatus()==-1)
						tvContentStatus.setImageStatus(-3);
					if(tvContentStatus.getPublishStatus()==-1)
						tvContentStatus.setPublishStatus(-3);
					if(tvContentStatus.getTranscodeStatus()==-1)
						tvContentStatus.setTranscodeStatus(-3);
					if(tvContentStatus.getAnalysisStatus()==-1)
						tvContentStatus.setAnalysisStatus(-3);
					serviceMonitorDao.saveObject(tvContentStatus);
				}
			}
		}
	}

	@Override
	public void reloadVodCaptionInfoStatus(String contentId) throws Exception {
		// TODO Auto-generated method stub
		VodContentStatus vodContentStatus;
		vodContentStatus=serviceMonitorDao.findVodContentStatusByContentId(contentId);
		if(vodContentStatus!=null){
				vodContentStatus.setCaptionStatus(4);
			vodContentStatus.setDigestStatus(-3);
			vodContentStatus.setImageStatus(-3);
			vodContentStatus.setPublishStatus(-3);
			vodContentStatus.setTranscodeStatus(-3);
			vodContentStatus.setAnalysisStatus(-3);
			serviceMonitorDao.saveObject(vodContentStatus);
		}
	}
	





}

